package com.wx.domain.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.wx.common.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Column;
import javax.persistence.Transient;
import java.io.Serializable;
import java.util.Date;

/**
 * <p>Title:      PatientAgreementVo. </p>
 * <p>Description 协议签署 </p>
 * <p>Copyright: Copyright (c) 2016</p>
 * <p>Company:    医百科技有限公司 </p>
 *
 * @author         yangwensheng@100doc.com.cn
 * @since      2021-03-25 10:08:31
 */
@Data
@ApiModel(value = "PatientAgreementVo")
public class PatientAgreementVo extends BaseEntity implements Serializable {

	private static final long serialVersionUID = 1L;

	/**
	 * 签署编码
	 */
	@Column(name = "sign_code")
	@ApiModelProperty(value = "签署编码")
	@ExcelProperty(value = "协议编码", index = 0)
	@ColumnWidth(value = 25)
	private String signCode;
	/**
	 * 用户id
	 */
	@Column(name = "user_id")
	@ApiModelProperty(value = "用户id")
	@ExcelIgnore
	private String userId;
	/**
	 * 用户类型 1：患者 2：用户
	 */
	@Column(name = "user_type")
	@ApiModelProperty(value = "用户类型 1：患者 2：用户")
	@ExcelIgnore
	private Integer userType;
	/**
	 * 签署时间
	 */
	@Column(name = "sign_time")
	@ApiModelProperty(value = "签署时间")
	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@ExcelProperty(value = "签署时间", index = 4)
	@ColumnWidth(value = 25)
	private Date signTime;

	/**
	 * 文件上传后返回的url
	 */
	@Column(name = "file_url")
	@ApiModelProperty(value = "文件上传后返回的url")
	@ExcelIgnore
	private String fileUrl;


	/**
	 * 姓名
	 */
	@ApiModelProperty(value = "患者姓名")
	@ExcelProperty(value = "患者姓名", index = 1)
	@ColumnWidth(value = 25)
	private String patientName;

	/**
	 * 所属区域
	 */
	@ApiModelProperty(value = "所属区域")
	@Transient
	@ExcelProperty(value = "所属区域", index = 2)
	@ColumnWidth(value = 25)
	private String rangeName;


	/**
	 * 所属护士
	 */
	@ApiModelProperty(value = "所属护士")
	@Transient
	@ExcelProperty(value = "所属护士", index = 3)
	@ColumnWidth(value = 25)
	private String nurseName;

	/**
	 * 所属护士
	 */
	@ApiModelProperty(value = "icf编码")
	@Transient
	@ExcelProperty(value = "icf编码", index = 5)
	@ColumnWidth(value = 25)
	private String icfCode;


}
